package com.googlecode.kipler.container.dl.creational;

import com.googlecode.kipler.container.dl.BasicWcsData;
import com.googlecode.kipler.container.dl.BasicWcsInterpolationData;
import com.googlecode.kipler.container.dl.WcsData;
import com.googlecode.kipler.container.dl.WorldConstraintSystem;

public class ALCWcsFactory extends WcsFactory {

	public ALCWcsFactory(boolean unfoldableTBox) {
		super(unfoldableTBox);
	}

	@Override
	public WorldConstraintSystem createWcs() {
		WorldConstraintSystem result = new WorldConstraintSystem(WorldFactory
				.getFactory(ContainerType.ALC, isUnfoldableTBox()));
		WcsData data = getReasoner().getProfile().isInterpolationEnabled() ? new BasicWcsInterpolationData()
				: new BasicWcsData();
		result.setData(data);
		result.setReasoner(getReasoner());
		return result;
	}

}
